Method and apparatus for data transmission

ABSTRACT

A method and apparatus for data transmission is provided herein. In accordance with the preferred embodiment of the present invention a loss-ratio estimator ( 105 ) estimates a current loss (L) for a communication channel ( 108 ). Once the actual loss for the channel is known, a generator ( 104 ) compares the actual loss (L) to a target loss (T). A retransmission control parameter (R) is then adjusted by the generator ( 104 ) and output to a transmitter  103  where it is used to control the retransmission behavior and to determine when to abort a bad frame. When a bad frame is aborted, transmitter  103  indicates the abortion to a receiving device ( 102 ). A receiver then utilizes the indication to stop reporting the bad frame in all subsequent ACK/NAKs.

FIELD OF THE INVENTION

[0001] The present invention relates generally to data transmission andin particular, to a method and apparatus for data transmission within acommunication system.

BACKGROUND OF THE INVENTION

[0002] Within a communication system, transmissions are conductedbetween a transmitting device and a receiving device over acommunication resource, commonly referred to as a communication channel.To date, data transmissions have typically consisted of either a totallyreliable data transfer protocol, or a totally unreliable data transferprotocol. Reliable data transmission protocols guarantee a lossless datatransfer service, while unreliable data transfer protocols guarantee a“best effort” and are not capable of meeting specific loss requirements.An example of a reliable transmission protocol is the TransmissionControl Protocol (TCP), while an example of an unreliable protocol isthe User Datagram Protocol (UDP).

[0003] In many data transmission scenarios a user can afford some lossof data even though a totally unreliable transmission protocol (e.g.,UDP) is unacceptable. That leaves the user with only one choice, namely,a totally reliable transmission protocol. For example, a user may beable to tolerate a maximum 10% loss in data transmission. Because UDPcannot guarantee a maximum loss, the user will be required to utilize atotally reliable transmission protocol (e.g., TCP). Since reliabletransmission protocols are generally more expensive than unreliabletransmission protocols, the user will be forced to pay a higher pricefor the totally reliable transmission protocol, even though the user cantolerate data loss. Notwithstanding this fact, the user is forced tooccupy more bandwidth than is necessary. Therefore, a need exists for amethod and apparatus for data transmission within a communication systemthat is less than totally reliable, yet offers more reliability than atotally unreliable transmission scheme and the level of reliability canbe controlled by the user.

BRIEF DESCRIPTION OF THE DRAWINGS

[0004]FIG. 1 is a block diagram of a communication system in accordancewith the preferred embodiment of the present invention.

[0005]FIG. 2 illustrates data transmission within the communicationsystem of FIG. 1 in accordance with the preferred embodiment of thepresent invention.

[0006]FIG. 3 illustrates data transmission within the communicationsystem of FIG. 1 in accordance with the preferred embodiment of thepresent invention.

[0007]FIG. 4 is a flow chart showing operation of the transmittingdevice of FIG. 1 in accordance with the preferred embodiment of thepresent invention.

[0008]FIG. 5 is a flow chart showing those steps necessary to retransmita lost frame in accordance with the preferred embodiment of the presentinvention.

[0009]FIG. 6 is a flow chart showing operation of the receiving deviceof FIG. 1 in accordance with the preferred embodiment of the presentinvention.

[0010]FIG. 7 is a block diagram of a communication system in accordancewith an alternate embodiment of the present invention.

DETAILED DESCRIPTION OF THE DRAWINGS

[0011] To address the above-mentioned need, a method and apparatus fordata transmission is provided herein. In accordance with the preferredembodiment of the present invention a loss-ratio estimator estimates acurrent loss (L) for a communication channel. Once the actual channelloss is known, a generator compares the actual loss (L) to a target loss(T). A retransmission control parameter (R) is then adjusted by thegenerator and output to a transmitter where it is used to control thecurrent retransmission behavior of the transmitter.

[0012] Because the transmitter continuously adjusts a retransmissionparameter based on the current channel condition, a specificuser-defined QoS loss ratio can be maintained. Therefore, a userrequiring a certain QoS can obtain that QoS without having to resort toa totally reliable transmission control protocol.

[0013] The present invention encompasses a method for data transmission.The method comprises the steps of receiving a first bad frame and/ordetecting a first lost frame a first plurality of times, and sending afirst number of Acknowledgments (ACKs) or Negative Acknowledgments(NAKs) in response to the received first bad or lost frames. The firstbad or lost frame is aborted. A second bad or lost frame is received ordetected a second plurality of times, and a second number of ACKs orNAKs is sent in response to the received second bad or lost frames. Thesecond bad or lost frame is then aborted.

[0014] The present invention additionally encompasses a method for datatransmission. The method comprises the steps of receiving anacknowledgment (ACK) or negative acknowledgment (NAK) and determining aloss ratio (L) based on the received ACK/NAK. The loss ratio is comparedwith a target loss ratio (T) and a retransmission parameter (R) isadjusted based on the comparison. The retransmission parameter comprisesa number of times a particular frame is to be retransmitted prior toaborting the frame.

[0015] The present invention additionally encompasses an apparatuscomprising a loss ratio generator having an ACK or NAK as an input andoutputting an estimated channel loss (L) and a retransmission parametergenerator having the estimated channel loss as an input and outputting aretransmission parameter (R) based on the estimated channel loss,wherein R comprises a number of retransmissions a frame undergoes priorto declaring the frame an aborted frame.

[0016] Finally, the present invention encompasses an apparatuscomprising a receiver having a poor frame as an input or detecting alost frame, and an ACK/NAK generator coupled to the receiver, thereceiver outputting an ACK/NAK based on a targeted loss ratio (T), anactual channel loss ratio (L), and a retransmission parameter (R),wherein the retransmission parameter comprises a number of times a frameis ACK/NAKed prior to declaring the frame an aborted frame.

[0017] Turning now to the drawings, wherein like numerals designate likecomponents, FIG. 1 is a communication system in accordance with thepreferred embodiment of the present invention. In the preferredembodiment of the present invention, communication system 100 utilizes aCode Division Multiple Access (CDMA) system protocol as described inCellular System Remote unit-Base Station Compatibility Standard of theElectronic Industry Association/Telecommunications Industry AssociationInterim Standard 95 (TIA/EIA/IS-95A), which is incorporated by referenceherein. (EIA/TIA can be contacted at 2001 Pennsylvania Ave. NWWashington D.C. 20006). Although in the preferred embodiment of thepresent invention communication system 100 is a cellular communicationsystem, in alternate embodiments communication system 100 may be anydata communication system, such as, but not limited to, an InternetProtocol (IP)-based network.

[0018] Communication system 100 comprises transmitting device 101, whichmay be a base transceiver station (BTS) and receiving device 102, whichmay be a mobile unit. As shown, transmitter and receiver arecommunicating via communication channel 108.

[0019] Communication systems that request retransmission of data can beeither Negative Acknowledgment (NAK) based, or Acknowledgment (ACK)based. For communication systems utilizing a NAK-based protocol,receiver 106 does not acknowledge correctly-received frames. Receiver106 only requests the retransmission of frames that were missing orincorrectly received by sending a NAK to transmitting device 101. Forcommunication systems using an ACK-based protocol receiver 106acknowledges all good frames received. From these acknowledgments,transmitter 101 determines which frame(s) is lost or is incorrectlyreceived.

[0020] In either a NAK-based or ACK-based communication system, oncetransmitter 101 determines that a particular frame is lost or notcorrectly received by receiver 106, the transmitter performs aretransmission of the frame and records the total number ofretransmissions applied to the frame so far. After a predeterminednumber retransmissions (R), and if the frame has not been correctlyreceived by the receiver, the transmitter aborts the retransmission ofthe bad frame and instructs the receiving device 102 that the frame hasbeen aborted.

[0021] In the preferred embodiment of the present invention for both ACKand NAK-based systems, retransmission control parameter generator 104controls the number of retransmissions (R) of bad frames to target aspecific loss ratio (T). More particularly, the user of thecommunication system specifies a target Quality of Service (QoS) lossratio. This can be done on a per-call basis, or apriori, based on auser's service agreement. Once transmitting device 101 receives thetarget loss ratio (T), transmitting device 101 continuously computes aloss ratio (L) based on information carried in the NAKs or ACKs receivedby loss-ratio estimator 105. In the preferred embodiment of the presentinvention the loss ratio is simply the number of lost or incorrectlyreceived frames divided by the total number of frames sent during apredetermined time period (e.g., the last 10 seconds). Moreparticularly,$L = {\frac{{Number}\quad {of}\quad {poor}\quad {frames}\quad {received}\quad {in}\quad {last}\quad 10\quad {seconds}}{{Total}\quad {number}\quad {of}\quad {frames}\quad {transmitted}\quad {in}\quad {last}\quad 10\quad {seconds}}.}$

[0022] Once the loss ratio is known, generator 104 compares the targetloss ratio to the actual loss ratio and adjusts the retransmissioncontrol parameter (R) accordingly. In particular, if:

[0023] L>T then R is increased,

[0024] L<T and R>0 then R is decreased,

[0025] L˜T then R is unchanged.

[0026] Specifically, if:

[0027] L>T then R is increased by 1,

[0028] L<T and R>0 then R is decreased by 1,

[0029] L˜T then R is unchanged.

[0030] It should be noted that for the above logic, R can be decreasedto a minimum of 0. When R is 0, transmitter 103 will not retransmit aframe even if it is indicated as lost.

[0031] Because transmitter 101 serves to maintain a specificuser-defined QoS loss ratio, a user requiring a certain QoS can obtainthat QoS without having to resort to a totally reliable transmissioncontrol protocol. Because of this, the bandwidth resource ofcommunication channel 108 which is often shared with other users can besaved and the additional data delay often associated with a totallyreliable transmission control protocol can be avoided.

[0032] Operation of Communication System Using a NAK-Based Protocol

[0033] In current Code Division Multiple Access (CDMA) communicationsystems a Radio Link Protocol (RLP) is utilized for the link layer totransport data traffic between a mobile unit and infrastructureequipment. During typical data transmission Point to Point Protocol(PPP) is utilized on top of the RLP. In such situations, RLP fragmentsPPP packets into 20 millisecond frames that are transmitted over theair. This is illustrated in FIG. 2. As shown, PPP packets 201 aresegmented into RLP frames 202 and transmitted over the air.

[0034] RLP is a NAK-based protocol in that once a bad frame has beenreceived, receiving device 102 will request retransmission of the lostframe periodically until the frame is received, or until an indicationis received from transmitting device 101 that the frame is aborted. Sucha scenario is illustrated in FIG. 3.

[0035] As shown in FIG. 3, frames 40-43, 45-46, 48-51, and 53 have beensuccessfully received. In this example, frames 44, 47, and 52 have beenpoorly received. Because of this, RLP will request retransmission ofthese frames periodically.

[0036] Current RLP defines variables V(N) and V(R), with V(N) beingequal to the next frame needed for sequential delivery of frames, andV(R) equal to the next new frame expected from the transmitter. V(N) isa variable that tells the receiver what frames have been received oraborted. In particular, all frames<V(N) are tagged as “received” by thereceiver, and the receiver will fail to send a NAK for frames havingvalues<V(N). (See IS-707 Section 3.1.2.2).

[0037] Implementing the above procedure into RLP requires thattransmitting device 101 constantly update R, record the number ofretransmission performed on each frame, determine whether theretransmission of a frame should be aborted, and communicate toreceiving device 102 when a frame is aborted. In the scenario describedin FIG. 3, V(N)=44 and V(R)=54. Thus, receiving device 102 will NAKframe 44. Upon the arrival of the NAK, loss-ratio estimator 105 will usethe NAK to update the current loss-ratio estimate L and generator 104will then adjust retransmission parameter R. At the same time,transmitter 103 will first examine whether frame 44 has already beretransmitted for R or more times. If so, transmitter 103 will notretransmit frame 44. Instead, it will communicate to receiving device102 that frame 44 is aborted. If transmitter 103 finds that frame 44 hasnot be retransmitted for R times, it will retransmit frame 44 one moretime. Upon the abortion of frame 44, V(N) is set by receiver 106 to thesequence number of the next missing data frame (i.e., frame 47).

[0038] Operation of Communication System Using an ACK-Based Protocol

[0039] In many existing communication systems an ACK-based protocol isutilized for the transportation of data traffic between a transmittingand receiving device. During typical data transmission, receiving device102 will periodically report to transmitting device 101 on framescorrectly received by sending back ACKs. Combining the informationreported in the ACKs with its own data transmission record, transmittingdevice 101 will derive information on lost frames if there are any. Inother words, in an ACK-based protocol the information on frames that arelost or poorly received is implicitly indicated in the ACKs. Once thelost frame(s) is identified through analyzing a newly arrived ACK,loss-ratio estimator 105 will update the current loss-ratio estimate Land generator 104 will then adjust retransmission parameter R. At thesame time, for each lost frame identified, transmitter 103 will firstexamine whether the frame has already been retransmitted for R or moretimes. If so, transmitter 103 will not retransmit the frame, but insteadwill communicate to receiving device 102 indicating that the frame isaborted. Upon reception of the abortion indication, receiving device 102will indicate the frame as received in its subsequent ACKs.

[0040] As shown in FIG. 3, frames 40-43, 45-46, 48-51, and 53 have beensuccessfully received. In this example, frames 44, 47, and 52 have beenpoorly received or never arrived. Because of this, in its next ACKmessage, receiving device 102 will report the correct reception of allframes up to 43, frames 45 and 46, frames 48 to 51, and frame 53. Whenthis ACK arrives at transmitting device 101, by examining theinformation carried in the ACK and its own transmission record,transmitting device 101 will determine that frames 44, 47, and 52 arenot correctly received or are lost. This information on lost frames willthen be used by estimator 105 to update L and generator 104 will thenuse the updated L to adjust R. At the same time, for each of the lostframes 44, 47, and 52, transmitter 103 will further examine whether theframe has already been retransmitted for R or more times, and if so,transmitter 103 will abort the frame and will indicate the abortion toreceiving device 102. If the frame has not been retransmitted for R ormore times, transmitter 103 will retransmit the lost frame one moretime.

[0041]FIG. 4 is a flow chart showing operation of the transmittingdevice in the communication system of FIG. 1 in accordance with thepreferred embodiment of the present invention. Although typicalcommunication systems employ either an ACK or NAK protocol, thefollowing description is given with the use of either protocol. Thefollowing description is not meant to imply that both an ACK and NAK areutilized simultaneously, but that either can be used.

[0042] The logic flow begins at step 401 where an ACK/NAK arrives attransmitting device 101. At step 403 the information carried in theACK/NAK is analyzed to identify which frame(s) is lost. At step 405,loss-ratio estimator 105 estimates a current loss (L) for communicationchannel 108. Once the loss ratio is known, generator 104 compares theactual loss (L) to a target loss (T) (step 407). A retransmissioncontrol parameter (R) is adjusted by generator 104 (step 409) and outputto transmitter 103 (step 411). At the same time, after the lost frame(s)is identified at step 403, transmitter 103 examines the lost frame andretransmit it if necessary (step 413).

[0043]FIG. 5 is a flow chart showing those steps necessary to retransmita lost frame in accordance with the preferred embodiment of the presentinvention. It should be noted that the description that followsillustrates retransmission of a single lost frame, however one ofordinary skill in the art will recognize that in actuality multiple lostframes may be simultaneously identified, and each processed as follows:

[0044] At step 501 a lost frame is identified by estimator 105. The lostframe is first examined whether it has already been retransmitted for Ror more times (step 503). If so, the lost frame is aborted and not beretransmitted (step 504), otherwise, the lost frame is retransmitted(step 505). After all the identified lost frames are eitherretransmitted or aborted, transmitter 103 indicates to receiving device102 the frames that have been aborted (step 508).

[0045] By adjusting the retransmission control parameter (R),communication system 100 maintains a targeted loss ratio (T). Therefore,a user requiring a certain QoS can obtain that QoS without having toresort to a totally reliable transmission control protocol.

[0046]FIG. 6 is a flow chart showing operation of receiving device 102in accordance with the preferred embodiment of the present invention.The following logic assumes reception of bad frames that are notsubsequently received correctly. The logic flow begins at step 601 wherereceiving device 102 receives a first bad frame. At step 603 generator107 transmits a first number of ACK/NAKs to transmitting device 101. Inparticular, at step 603 generator 107 will periodically ACK/NAK a badframe if the frame has not been correctly received. At step 605 thefirst bad frame is declared an aborted frame by transmitter 103 and thedecision is indicated to receiver 106. The arrival of this indicationcauses generator 107 to stop reporting the first bad frame in all itssubsequent ACK/NAKs (step 607). The logic flow continues to step 609where a second bad frame is received by receiver 102. The logic flowcontinues to step 611 where generator 107 transmits a second number ofACK/NAKs to transmitting device 101 only reporting the second bad frame.

[0047] It should be noted that in the above description, the first andthe second number of ACK/NAKs that are transmitted to transmittingdevice 101 may differ. In each case, the frame is declared aborted,however, a different number of ACK/NAKs were required to do so in eachcase. Because of this, a user requiring a certain QoS can obtain thatQoS without having to resort to a totally reliable transmission controlprotocol. Because of this, the bandwidth resource of communicationchannel 108 which is often shared with other users can be saved and theadditional data delay often associated with a totally reliabletransmission control protocol can be avoided.

[0048]FIG. 7 is a block diagram of communication system 700 inaccordance with an alternate embodiment of the present invention. Inaccordance with the alternate embodiment of the present invention, framedropper 701 is introduced to receiving device 101. The purpose of framedropper 701 is to randomly drop D percent of frames in order to maintaina targeted loss ratio (T). In other words, if loss-ratio estimator 105determines that an actual loss is still less than target loss ratio (T),after having adjusted the retransmission control parameter R to 0,generator 104 instructs frame dropper 701 to randomly drop D percent offrames in order to further save bandwidth resource from communicationchannel 108. In many situations it will be necessary to both lower R anddrop packets to maintain a target QoS. This is because the quality of achannel may be good even though R=0. In this situation, R cannot bedecreased any further, and frame dropper 701 will periodically droprandom frames to maintain a targeted QoS. Generator 104 will graduallyincrease D until the actual loss L is equal to the targeted loss ratio(T).

[0049] Operation of communication system 700 in accordance with thealternate embodiment of the present invention occurs as follows: Oncethe loss ratio is known, generator 104 compares the target loss ratio tothe actual loss ratio and adjusts the retransmission control parameter(R) and instructs frame dropper 701 to drop frames according to thefollowing logic:

[0050] Both R and D are set to 0 at initialization.

[0051] If L>T and D>0 then D is decreased,

[0052] If L>T and D=0 then R is increased,

[0053] If L<T and R>0 then R is decreased, and

[0054] If L<T and R=0 then D is increased.

[0055] L˜T then R and D are unchanged.

[0056] Communication system 700 serves to maintain a targeted QoS lossratio (T) by dropping frames when the retransmission control parameteris at its lowest value.

[0057] While the invention has been particularly shown and describedwith reference to a particular embodiment, it will be understood bythose skilled in the art that various changes in form and details may bemade therein without departing from the spirit and scope of theinvention. For example, although the above description was given withrespect to link-layer retransmission, one of ordinary skill in the artwill recognize that the above description may be applied to any layerrequiring retransmission of lost data packets. It is intended that suchchanges come within the scope of the following claims.

1. A method for data transmission, the method comprising the steps of:receiving a first bad frame a first plurality of times; sending a firstnumber of Acknowledgments (ACKS) or Negative Acknowledgments (NAKs) inresponse to the received first bad frames; declaring the first bad framean aborted frame; receiving a second bad frame a second plurality oftimes; sending a second number of ACKs or NAKs in response to thereceived second bad frames, wherein the first and the second number ofACKs or NAKs differ; and declaring the second bad frame an abortedframe.
 2. The method of claim 1 wherein the step of receiving the firstbad frame comprises the step of receiving a first Radio Link Protocol(RLP) frame.
 3. The method of claim 1 wherein the step of declaring thefirst bad frame an aborted frame comprises the step of declaring thefirst bad frame an aborted frame only after sending the first numberACKs or NAKs in response to the first bad frame.
 4. A method for datatransmission, the method comprising the steps of: receiving anacknowledgment (ACK) or negative acknowledgment OAK); determining a lossratio (L) based on the received ACK/NAK; comparing the loss ratio with atarget loss ratio (T); and adjusting a retransmission parameter (R)based on the comparison, wherein the retransmission parameter comprisesa number of times a particular frame is to be retransmitted prior toaborting the frame.
 5. The method claim 4 wherein the step of adjustingR comprises the steps of increasing R when L>T, and decreasing R whenL<T and R>0.
 6. The method of claim 4 wherein the step of comparing theloss ratio with the target loss ratio comprises the step of comparingthe loss ratio with a user specified loss ratio.
 7. An apparatuscomprising: a loss ratio generator having an ACK or NAK as an input andoutputting an estimated channel loss (L); and a retransmission parametergenerator having the estimated channel loss as an input and outputting aretransmission parameter (R) based on the estimated channel loss,wherein R comprises a number of retransmissions a frame undergoes priorto declaring the frame an aborted frame.
 8. The apparatus of claim 7wherein the retransmission parameter generator additionally has a targetloss ratio (T) as an input and outputs R based additionally on T.
 9. Theapparatus of claim 8 wherein T is a user-specified value.
 10. Theapparatus of claim 7 wherein$L = {\frac{{Number}\quad {of}\quad {poor}\quad {frames}\quad {received}\quad {in}\quad {last}\quad 10\quad {seconds}}{{Total}\quad {number}\quad {of}\quad {frames}\quad {transmitted}\quad {in}\quad {last}\quad 10\quad {seconds}}.}$


11. The apparatus of claim 7 wherein if L>T then R is increased, L<T andR>0 then R is decreased, L˜T then R is unchanged.
 12. The apparatus ofclaim 7 further comprising a frame dropper selectively dropping framesto maintain a targeted loss ratio (T).
 13. An apparatus comprising: areceiver having a poor frame as an input; an ACK/NAK generator coupledto the receiver, the receiver outputting an ACK/NAK based on a targetedloss ratio (T), an actual channel loss ratio (L), and a retransmissionparameter (R), wherein the retransmission parameter comprises a numberof times a frame is ACK/NAKed prior to declaring the frame an abortedframe.
 14. The apparatus of claim 13 wherein the actual channel lossratio is calculated by a transmitter transmitting the poor frame to thereceiver.